package com.svms.save.importexcel.service;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

import org.apache.commons.lang3.StringUtils;

import com.svms.save.importexcel.utils.IdcardUtils;
import com.svms.save.importexcel.vo.FieldMapping;

import jxl.Cell;
/**
 * <p>Title      : 吉林省公安厅情报平台</p>
 * <p>Description: TODO[导入Excel]_[导入Excel验证工具]</p>
 * <p>Copyright  : Copyright (c) 2014</p>
 * <p>Company    : 科大讯飞信息科技股份有限公司</p>
 * <p>Department : 行软事业部  公安情报</p>
 * @author       : 杨旭 xuyang2@iflytek.com
 * @version      : 1.0
 */
public abstract class TestTools {
	/**
	 * 字典项验证
	 * @param dicName
	 * @param value
	 * @return
	 */
	public boolean dicTest(String dicName,String value){
		return true;
	}
	/**
	 * 正则表达式验证
	 * @param value
	 * @param regValue
	 * @return
	 */
	public boolean regTest(String regValue,String value){
		boolean flag = false;
		if(StringUtils.isNotBlank(regValue) && null != value){
			Pattern p = Pattern.compile(regValue);
			Matcher matcher = p.matcher(value);
			flag = matcher.matches();
		}
		return flag;
	}
	/**
	 * 身份证验证
	 * @param idcardValue
	 * @return
	 */
	public boolean IDCardValidate(String idcardValue){
		return IdcardUtils.validateCard(idcardValue);
	}
	
	public String otherTest(FieldMapping fm,String value,Cell[] cells) {
		return null;
	}
	/**
	 * 字符串长度验证
	 * @param length
	 * @param value
	 * @return
	 */
	public boolean lengthTest(int length,String value){
		return value.length() <= length;
	}
}
